Apparatus, system and method of controlling wireless transmission of video streams

ABSTRACT

Some demonstrative embodiments include apparatuses, systems and/or methods of controlling wireless transmission of video streams. For example, an apparatus may include a controller to control one or more windows to be displayed by a display device, the one or more windows to display video of one or more wireless video streams of a plurality of wireless video streams transmitted by a plurality of video sources, the controller is to request at least one video source of the plurality of video sources to set one or more attributes of a video stream transmitted by the video source based on at least one predefined criterion.

TECHNICAL FIELD

Embodiments described herein generally relate to apparatus, system andmethod of controlling wireless transmission of video streams.

BACKGROUND

Wireless Display (WiDi) technology enables sharing video content from adevice such as a tablet, a notebook, and/or the like. The video contentfrom the device may be transmitted over a wireless channel to a displaydevice, for example, a screen, a projector, a television (TV) and/or thelike, which may be configured to display the video content on a largerdisplay compared to a screen of the device.

For example, the WiDi technology may enable a teacher in a class ofstudents to display video content from a tablet of one of the students,e.g., a homework assignment, on the large display, which may enable thestudents in the class to view the video content.

BRIEF DESCRIPTION OF THE DRAWINGS

For simplicity and clarity of illustration, elements shown in thefigures have not necessarily been drawn to scale. For example, thedimensions of some of the elements may be exaggerated relative to otherelements for clarity of presentation. Furthermore, reference numeralsmay be repeated among the figures to indicate corresponding or analogouselements. The figures are listed below.

FIG. 1 is a schematic block diagram illustration of a system, inaccordance with some demonstrative embodiments.

FIG. 2 is a flow chart illustration of a method of adjusting a bit rateof a video encoder, in accordance with some demonstrative embodiments.

FIG. 3 is a schematic flow chart illustration of a method of controllingwireless transmission of video streams, in accordance with somedemonstrative embodiments.

FIG. 4 is a schematic illustration of a product of manufacture, inaccordance with some demonstrative embodiments.

DETAILED DESCRIPTION

In the following detailed description, numerous specific details are setforth in order to provide a thorough understanding of some embodiments.However, it will be understood by persons of ordinary skill in the artthat some embodiments may be practiced without these specific details.In other instances, well-known methods, procedures, components, unitsand/or circuits have not been described in detail so as not to obscurethe discussion.

Discussions herein utilizing terms such as, for example, “processing”,“computing”, “calculating”, “determining”, “establishing”, “analyzing”,“checking”, or the like, may refer to operation(s) and/or process(es) ofa computer, a computing platform, a computing system, or otherelectronic computing device, that manipulate and/or transform datarepresented as physical (e.g., electronic) quantities within thecomputer's registers and/or memories into other data similarlyrepresented as physical quantities within the computer's registersand/or memories or other information storage medium that may storeinstructions to perform operations and/or processes.

The terms “plurality” and “a plurality”, as used herein, include, forexample, “multiple” or “two or more”. For example, “a plurality ofitems” includes two or more items.

References to “one embodiment”, “an embodiment”, “demonstrativeembodiment”, “various embodiments” etc., indicate that the embodiment(s)so described may include a particular feature, structure, orcharacteristic, but not every embodiment necessarily includes theparticular feature, structure, or characteristic. Further, repeated useof the phrase “in one embodiment” does not necessarily refer to the sameembodiment, although it may.

As used herein, unless otherwise specified the use of the ordinaladjectives “first”, “second”, “third” etc., to describe a common object,merely indicate that different instances of like objects are beingreferred to, and are not intended to imply that the objects so describedmust be in a given sequence, either temporally, spatially, in ranking,or in any other manner.

Some embodiments may be used in conjunction with various devices andsystems, for example, a Personal Computer (PC), a desktop computer, amobile computer, a laptop computer, a notebook computer, a tabletcomputer, a server computer, a handheld computer, a handheld device, aPersonal Digital Assistant (PDA) device, a handheld PDA device, anon-board device, an off-board device, a hybrid device, a vehiculardevice, a non-vehicular device, a mobile or portable device, a consumerdevice, a non-mobile or non-portable device, a wireless communicationstation, a wireless communication device, a wireless Access Point (AP),a wired or wireless router, a wired or wireless modem, a video device,an audio device, an audio-video (A/V) device, a wired or wirelessnetwork, a wireless area network, a Wireless Video Area Network (WVAN),a Local Area Network (LAN), a Wireless LAN (WLAN), a Personal AreaNetwork (PAN), a Wireless PAN (WPAN), and the like.

Some embodiments may be used in conjunction with devices and/or networksoperating in accordance with existing Wireless-Gigabit-Alliance (WGA)specifications (Wireless Gigabit Alliance, Inc WiGig MAC and PHYSpecification Version 1.1, April 2011, Final specification) and/orfuture versions and/or derivatives thereof, devices and/or networksoperating in accordance with existing IEEE 802.11 standards (IEEE802.11-2012, IEEE Standard for Information technology—Telecommunicationsand information exchange between systems Local and metropolitan areanetworks—Specific requirements Part 11: Wireless LAN Medium AccessControl (MAC) and Physical Layer (PHY) Specifications, Mar. 29, 2012;IEEE802.11 task group ac (TGac) (“IEEE802.11-09/0308r12—TGac ChannelModel Addendum Document”); IEEE 802.11 task group ad (TGad) (IEEEP802.11ad-2012, IEEE Standard for InformationTechnology—Telecommunications and Information Exchange BetweenSystems—Local and Metropolitan Area Networks—Specific Requirements—Part11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY)Specifications—Amendment 3: Enhancements for Very High Throughput in the60 GHz Band, 28 Dec., 2012)) and/or future versions and/or derivativesthereof, devices and/or networks operating in accordance with existingWirelessHD™ specifications and/or future versions and/or derivativesthereof, units and/or devices which are part of the above networks,devices and/or networks operating in accordance with existing IntelWireless Display (WiDi) specifications and/or future versions and/orderivatives thereof, devices and/or networks operating in accordancewith existing Miracast™ specifications and/or future versions and/orderivatives thereof, and the like.

Some embodiments may be used in conjunction with one way and/or two-wayradio communication systems, cellular radio-telephone communicationsystems, a mobile phone, a cellular telephone, a wireless telephone, aPersonal Communication Systems (PCS) device, a PDA device whichincorporates a wireless communication device, a mobile or portableGlobal Positioning System (GPS) device, a device which incorporates aGPS receiver or transceiver or chip, a device which incorporates an RFIDelement or chip, a Multiple Input Multiple Output (MIMO) transceiver ordevice, a Single Input Multiple Output (SIMO) transceiver or device, aMultiple Input Single Output (MISO) transceiver or device, a devicehaving one or more internal antennas and/or external antennas, DigitalVideo Broadcast (DVB) devices or systems, multi-standard radio devicesor systems, a wired or wireless handheld device, e.g., a Smartphone, aWireless Application Protocol (WAP) device, or the like.

Some embodiments may be used in conjunction with one or more types ofwireless communication signals and/or systems, for example, RadioFrequency (RF), Infra Red (IR), Frequency-Division Multiplexing (FDM),Orthogonal FDM (OFDM), Time-Division Multiplexing (TDM), Time-DivisionMultiple Access (TDMA), Extended TDMA (E-TDMA), General Packet RadioService (GPRS), extended GPRS, Code-Division Multiple Access (CDMA),Wideband CDMA (WCDMA), CDMA 2000, single-carrier CDMA, multi-carrierCDMA, Multi-Carrier Modulation (MDM), Discrete Multi-Tone (DMT),Bluetooth®, Global Positioning System (GPS), Wi-Fi, Wi-Max, ZigBee™,Ultra-Wideband (UWB), Global System for Mobile communication (GSM), 2G,2.5G, 3G, 3.5G, 4G, Fifth Generation (5G) mobile networks, 3GPP, LongTerm Evolution (LTE), LTE advanced, Enhanced Data rates for GSMEvolution (EDGE), or the like. Other embodiments may be used in variousother devices, systems and/or networks.

The term “wireless device”, as used herein, includes, for example, adevice capable of wireless communication, a communication device capableof wireless communication, a communication station capable of wirelesscommunication, a portable or non-portable device capable of wirelesscommunication, or the like. In some demonstrative embodiments, awireless device may be or may include a peripheral that is integratedwith a computer, or a peripheral that is attached to a computer. In somedemonstrative embodiments, the term “wireless device” may optionallyinclude a wireless service.

The term “communicating” as used herein with respect to a wirelesscommunication signal includes transmitting the wireless communicationsignal and/or receiving the wireless communication signal. For example,a wireless communication unit, which is capable of communicating awireless communication signal, may include a wireless transmitter totransmit the wireless communication signal to at least one otherwireless communication unit, and/or a wireless communication receiver toreceive the wireless communication signal from at least one otherwireless communication unit.

Some demonstrative embodiments may be used in conjunction with a WLAN.Other embodiments may be used in conjunction with any other suitablewireless communication network, for example, a wireless area network, a“piconet”, a WPAN, a WVAN and the like.

Some demonstrative embodiments may be used in conjunction with awireless communication network communicating over a frequency band of 60GHz. However, other embodiments may be implemented utilizing any othersuitable wireless communication frequency bands, for example, anExtremely High Frequency (EHF) band (the millimeter wave (mmWave)frequency band), e.g., a frequency band within the frequency band ofbetween 20 Ghz and 300 GHZ, a WLAN frequency band, a WPAN frequencyband, a frequency band according to the WGA specification, and the like.

The term “antenna”, as used herein, may include any suitableconfiguration, structure and/or arrangement of one or more antennaelements, components, units, assemblies and/or arrays. In someembodiments, the antenna may implement transmit and receivefunctionalities using separate transmit and receive antenna elements. Insome embodiments, the antenna may implement transmit and receivefunctionalities using common and/or integrated transmit/receiveelements. The antenna may include, for example, a phased array antenna,a single element antenna, a set of switched beam antennas, and/or thelike.

The term “station” (STA), as used herein, may include any logical entitythat is a singly addressable instance of a medium access control (MAC)and a physical layer (PHY) interface to a wireless medium (WM).

The phrase “access point” (AP), as used herein, may include an entitythat contains one station (STA) and provides access to distributionservices, via the WM for associated STAs.

The phrase “non-access-point (non-AP) station (STA)”, as used herein,may relate to a STA that is not contained within an AP.

Reference is now made to FIG. 1, which schematically illustrates a blockdiagram of a system 100, in accordance with some demonstrativeembodiments.

In some demonstrative embodiments, system 100 may include a wirelesscommunication network including one or more wireless communicationdevices, e.g., wireless communication devices 102, 130, 140, 150 and/or160, capable of communicating content, data, information and/or signalsover a wireless communication medium 103, for example, a radio channel,an IR channel, a RF channel, a Wireless Fidelity (WiFi) channel, awireless display (WiDi) channel and the like. One or more elements ofsystem 100 may optionally be capable of communicating over any suitablewired communication links.

In some demonstrative embodiments, wireless communication devices 102,130, 140, 150 and/or 160 may include a mobile device. In otherembodiments, devices 102, 130, 140, 150 and/or 160 may include anon-mobile device.

In some demonstrative embodiments, wireless communication devices 102,130, 140, 150 and/or 160 may include, for example, a PC, a desktopcomputer, a mobile computer, a laptop computer, a notebook computer, atablet computer, an Ultrabook™ computer, a mobile internet device, aserver computer, a handheld computer, a handheld device, a PDA device, ahandheld PDA device, an on-board device, an off-board device, a hybriddevice (e.g., combining cellular phone functionalities with PDA devicefunctionalities), a consumer device, a vehicular device, a non-vehiculardevice, a mobile or portable device, a non-mobile or non-portabledevice, a mobile phone, a cellular telephone, a PCS device, a PDA devicewhich incorporates a wireless communication device, a mobile or portableGPS device, a DVB device, a relatively small computing device, anon-desktop computer, a “Carry Small Live Large” (CSLL) device, an UltraMobile Device (UMD), an Ultra Mobile PC (UMPC), a Mobile Internet Device(MID), an “Origami” device or computing device, a device that supportsDynamically Composable Computing (DCC), a context-aware device, a videodevice, an audio device, an A/V device, a Set-Top-Box (STB), a Blu-raydisc (BD) player, a BD recorder, a Digital Video Disc (DVD) player, aHigh Definition (HD) DVD player, a DVD recorder, a HD DVD recorder, aPersonal Video Recorder (PVR), a broadcast HD receiver, a video source,a video sink, a stereo tuner, a flat panel display, a Personal MediaPlayer (PMP), a digital video camera (DVC), a gaming device, a DigitalStill camera (DSC), a media player, a Smartphone, a television, or thelike.

In some demonstrative embodiments, wireless communication devices 102,130, 140, 150 and/or 160 may also include, for example, a processor 191,an input unit 192, an output unit 193, a memory unit 194, and a storageunit 195. Wireless communication devices 102, 130, 140, 150 and/or 160may optionally include other suitable hardware components and/orsoftware components. In some demonstrative embodiments, some or all ofthe components of mobile device wireless communication devices 102, 130,140, 150 and/or 160 may be enclosed in a common housing or packaging,and may be interconnected or operably associated using one or more wiredor wireless links. In other embodiments, components of wirelesscommunication devices 102, 130, 140, 150 and/or 160 may be distributedamong multiple or separate devices.

Processor 191 include, for example, a Central Processing Unit (CPU), aDigital Signal Processor (DSP), one or more processor cores, asingle-core processor, a dual-core processor, a multiple-core processor,a microprocessor, a host processor, a controller, a plurality ofprocessors or controllers, a chip, a microchip, one or more circuits,circuitry, a logic unit, an Integrated Circuit (IC), anApplication-Specific IC (ASIC), or any other suitable multi-purpose orspecific processor or controller. For example, processor 191 executesinstructions, for example, of an Operating System (OS) of mobile device102 and/or of one or more suitable applications.

Memory unit 194 includes, for example, a Random Access Memory (RAM), aRead Only Memory (ROM), a Dynamic RAM (DRAM), a Synchronous DRAM(SD-RAM), a flash memory, a volatile memory, a non-volatile memory, acache memory, a buffer, a short term memory unit, a long term memoryunit, or other suitable memory units. Storage unit 195 include, forexample, a hard disk drive, a floppy disk drive, a Compact Disk (CD)drive, a CD-ROM drive, a DVD drive, or other suitable removable ornon-removable storage units. For example, memory unit 194 and/or storageunit 195, for example, may store data processed by device 102.

Input unit 192 includes, for example, a keyboard, a keypad, a mouse, atouch-screen, a touch-pad, a track-ball, a stylus, a microphone, orother suitable pointing device or input device. Output unit 193includes, for example, a monitor, a screen, a touch-screen, a flat paneldisplay, a Cathode Ray Tube (CRT) display unit, a Liquid Crystal Display(LCD) display unit, a plasma display unit, one or more audio speakers orearphones, or other suitable output devices.

In some demonstrative embodiments, wireless medium 103 may include forexample, a Radio Frequency (RF) channel, channel, a WiFi channel, awireless display (WiDi) channel, a Bluetooth channel, a cellularchannel, a Global Navigation Satellite System (GNSS) Channel, a NearField Communication (NFC) channel, a Hybrid Digital Radio (HDR) channel,a Frequency Modulation (FM) channel, and the like.

In some demonstrative embodiments, wireless communication devices 102,130, 140, 150 and/or 160 may include wireless communication units toperform wireless communication between wireless communication devices102, 130, 140, 150 and/or 160 and/or with one or more other wirelesscommunication devices. For example, device 102 may include a wirelesscommunication unit 110, and/or device 130 may include a wirelesscommunication unit 132.

In some demonstrative embodiments, the wireless communication units ofdevices 102, 130, 140, 150 and/or 160 may include, for example, one ormore radios. For example, wireless communication unit 110 may include aradio 114. For example, radio 114 may include one or more wirelesstransmitters, receivers and/or transceivers able to send and/or receivewireless communication signals, RF signals, frames, blocks, transmissionstreams, packets, messages, data items, and/or data. For example,wireless communication units 110 and/or 132 may include or may beimplemented as part of a wireless Network Interface Card (NIC), and thelike.

In some demonstrative embodiments, the wireless communication units ofdevices 102, 130, 140, 150 and/or 160 may include, or may be associatedwith, one or more antennas. For example, wireless communication unit 110may be associated with antennas 107, and/or wireless communication unit132 may be associated with antennas 108. Antennas 107 and/or 108 mayinclude any type of antennas suitable for transmitting and/or receivingwireless communication signals, blocks, frames, transmission streams,packets, messages and/or data. For example, antennas 107 and/or 108 mayinclude any suitable configuration, structure and/or arrangement of oneor more antenna elements, components, units, assemblies and/or arrays.Antennas 107 and/or 108 may include, for example, antennas suitable fordirectional communication, e.g., using beamforming techniques. Forexample, antennas 107 and/or 108 may include a phased array antenna, asingle element antenna, a set of switched beam antennas, and/or thelike. In some embodiments, antennas 107 and/or 108 may implementtransmit and receive functionalities using separate transmit and receiveantenna elements. In some embodiments, antennas 107 and/or 108 mayimplement transmit and receive functionalities using common and/orintegrated transmit/receive elements.

In some demonstrative embodiments, system 100 may include a displaydevice 120 to display video content on a screen 125.

In some demonstrative embodiments, display device 120 may be implementedas part of device 102. For example, device 102 may include an all in one(AIO) computing device, a smart board and/or the like. For example,screen 125 may include an LCD screen, a light electric diode (LED)screen, a touchscreen and/or the like.

In some demonstrative embodiments, display device 120 and device 102 maybe implemented as separate elements of system 100. For example, device102 may include a computing device, e.g., a personal computer, anotebook, a server, and/or the like, connected to display device 120,which may include a projector, a plasma TV, an LCD display and/or thelike. For example, screen 125 may include a projected screen, a screenof a plasma TV or an LCD monitor.

In some demonstrative embodiments, display device 120 may be configuredto display one or more windows to display the video content on screen125.

In some demonstrative embodiments, display device 120 may be configuredto display a window 121, a window 122, a window 123, and/or a window124.

In some demonstrative embodiments, display device 120 may be configuredto display a single window, e.g., occupying the entirety of screen 125.For example, display 120 may be configured to display window 121occupying the entirety of screen 125.

In some demonstrative embodiments, display device 120 may be configuredto display two or more windows, e.g., three windows, four windows, eightwindows and/or any other number of windows. For example, display device120 may be configured to display two or more windows of windows 121,122, 123 and/or 124.

In some demonstrative embodiments, the two or more windows may bedisplayed concurrently. For example, screen 125 may be divided into twoparts to display two windows side by side, four non-overlapping parts todisplay four windows, and/or any other number of parts to display anyother number of windows.

In some demonstrative embodiments, displaying two or more windowsconcurrently may enable concurrently displaying different video contentin each of the windows.

In one example, display device 120 may be configured to display windows121, 122, 123 and/or 124 concurrently, such that each window of windows121, 122, 123 and/or 124 may display different video content. Forexample, window 121 may display video of a document, window 122 maydisplay video of a webpage, window 123 may display video of a movieand/or window 124 may display video captured by a web camera.

In some demonstrative embodiments, a user of device 102 may controldisplay device 120. For example, the user may control one or moredisplayed windows of windows 121, 122, 123 and/or 124.

In some demonstrative embodiments, the user may utilize input 192, e.g.,a mouse, a keyboard, a pointing device, and/or the like, to control theone or more windows.

In some demonstrative embodiments, the user of device 102 may control adisplayed window, for example, by moving the window around screen 125and/or by resizing the window.

In some demonstrative embodiments, the user of device 102 may controltwo or more displayed windows, for example, by selecting one or more ofwindows 121, 122, 123, and/or 124 to be displayed; and/or by selectingan active window of windows 121, 122, 123, and/or 124, in which one ormore operations may be performed by the user, e.g., marking text in avideo of a document displayed in the active window, playing or stoppinga video of a movie displayed in the active windows and/or the like.

In some demonstrative embodiments, display device 120 may be configuredto display video from one or more remote video sources, for example,video generated by devices 130, 140, 150 and/or 160.

In some demonstrative embodiments, devices 130, 140, 150 and/or 160 mayinclude a plurality of video sources to generate video. For example,device 130 may include a video source 131, device 140 may include avideo source 141, device 150 may include a video source 151, and/ordevice 160 may include a video source 161.

In some demonstrative embodiments, the video generated by video sources131,141, 151 and/or 161 may be displayed on screens of devices 130, 140,150 and/or 160. For example, a screen of device 130 may display video ofa movie, a web browser, a presentation and/or the like, generated byvideo source 131.

In some demonstrative embodiments, wireless communication devices 130,140, 150 and/or 160 may be configured to enable displaying videogenerated by video sources 130, 140, 150 and/or 160 on a remote display,e.g., instead of and/or in addition to the screens of devices 130, 140,150 and/or 160. For example, a video generated by video source 131 maybe displayed on the screen of device 130 and by display device 120.

In some demonstrative embodiments, wireless communication devices 130,140, 150 and/or 160 may transmit the video generated by video sources131, 141, 151 and/or 161 to device 102, e.g., to enable displaying thevideo on display 120.

In some demonstrative embodiments, wireless communication devices 130,140, 150 and/or 160 may transmit the video generated by video sources131, 141, 151 and/or 161 via a plurality of wireless video streams.

In some demonstrative embodiments, wireless communication device 130 maybe configured to transmit to device 102, e.g., via wirelesscommunication unit 132 and antennas 108, a wireless video stream 134including video generated by video source 131; wireless communicationdevice 140 may be configured to transmit to device 102 a wireless videostream 144 including video generated by video source 141; wirelesscommunication device 150 may be configured to transmit to device 102 awireless video stream 154 including video generated by video source 151;and/or wireless communication device 160 may be configured to transmitto device 102 a wireless video stream 164 including video generated byvideo source 161.

In some demonstrative embodiments, wireless video streams 134, 144, 154,and/or 164 may be transmitted over wireless communication medium 103 viaa Wireless Display (WiDi) link, a Wireless Fidelity (WiFi) link, awireless gigabit (WiGig) Display Extension (WDE) link, and/or any othersuitable channel or link.

In some demonstrative embodiments, wireless communication unit 110 mayreceive wireless video streams 134, 144, 154, and/or 164, e.g., viaantennas 107.

In some demonstrative embodiments, device 102 may be configured tocontrol display device 120 to display the video of wireless videostreams 134, 144, 154, and/or 164.

In one example, system 100 may be deployed in a class of students.Devices 130, 140, 150 and/or 160 may include portable devices, e.g.,laptops or tablets, to be used by the students, and device 102 mayinclude a smart board having a large screen to be used by a teacher ofthe class. Devices 130, 140, 150 and/or 160 may transmit video to device102 representing, for example, homework assignments, which may beprepared and/or stored on the tablets by the students. Device 102 mayreceive the video representing the homework assignments. The teacher maybe able to display one of the homework assignments on the large screenof the smart board, which may enable all of the students in the class toview the assignment.

In some demonstrative embodiments, devices 130, 140, 150 and/or 160 mayconcurrently transmit wireless video streams 134, 144, 154, and/or 164,and display device 120 may concurrently display video of two or moredifferent wireless video streams.

In some demonstrative embodiments, device 102 may implement a WiDiM-to-1 streaming, which may enable M streams to be concurrentlydisplayed on one display. For example, WiDi M-to-1 streaming may enabledisplaying video of wireless video streams 134, 144, 154, and/or 164 bydisplay device 120.

In some demonstrative embodiments, display device 120 may be configuredto display video in two displaying modes, e.g., a single viewport windowto display a single window occupying the entirety of screen 125, andmultiple non-overlapped viewport windows to concurrently display videoof a plurality of video streams.

In some demonstrative embodiments, display device 120 may be configuredto display the video of the two or more different wireless video streamsin two or more windows of windows 121, 122, 123, and/or 124.

In one example, display device 120 may be configured to display window121 to display video of wireless video stream 134 and window 122 todisplay video of wireless video stream 144. For example, the user ofdevice 102 may select to view the video of wireless video streams 134and 144 such that windows 121 and 122 are displayed side by side onscreen 125.

In another example, display device 120 may be configured to displaywindows 121, 122, 123 and 124 to display video of video streams 134,144, 154 and 164, respectively. For example, the user of device 102 mayselect to view video of wireless video streams 134, 144, 154 and 164,such that screen 125 is divided into four non-overlapping partsdisplaying the video of wireless video streams 134, 144, 154 and/or 164in windows 121, 122, 123 and 124.

In some demonstrative embodiments, devices 130, 140, 150 and/or 160 mayinclude one or more encoders configured to encode the video of videosources 131, 141, 151, and/or 161. For example, device 130 may includean encoder 135 configured to encode the video generated by video source131.

In some demonstrative embodiments, the one or more encoders may enabletransmitting the video via wireless video streams 134, 144, 154, and/or164. For example, encoder 135 may compress and/or process the video ofvideo source 131 to enable transmitting the encoded video via wirelessvideo stream 134.

In some demonstrative embodiments, the encoders may encode the video ofvideo sources 131, 141, 151, and/or 161 according to one or moreencoding attributes.

In some demonstrative embodiments, the one or more encoding attributesmay include a resolution of the video, a frame rate of the video, a bitrate of the video, and/or any other attribute.

In one example, encoder 135 may encode video of video source 131 at aresolution having a width of 1024 pixels and a height of 768 pixels(1024×768), a frame rate of 30 frames per second (FPS), and/or a bitrate of ten Mega bit per second (Mbps), and wireless communication unit132 may transmit the video via wireless video stream 134.

In some demonstrative embodiments, the encoding attributes of a videostream may affect a bandwidth required for transmitting the video streamover wireless medium 103.

In some demonstrative embodiments, increasing the resolution of thevideo stream may increase the bandwidth required for transmitting thevideo stream, increasing the frame rate of the video stream may increasethe bandwidth required for transmitting the video stream, and/orincreasing the bit rate of the video stream may increase the bandwidthrequired for transmitting the video stream.

For example, a first wireless video stream including video encoded at arelatively low resolution, a relatively low frame rate and/or arelatively low bit rate may require less bandwidth than a secondwireless video stream including video encoded at a relatively highresolution, a relatively high frame rate and/or a relatively high bitrate.

In some demonstrative embodiments, a wireless bandwidth of wirelessmedium 103 may have a limited wireless bandwidth capacity, for example,due to hardware specification of a device, e.g., a PC, which providesaccess to wireless medium 103; and/or due to co-channel RF interference,for example, resulting from WiFi communication between one or morewireless devices, RF transmissions by other devices, e.g., a microwaveoven, and/or any other interference resulting from any other RFtransmitter or source.

In some demonstrative embodiments, wireless video streams 134, 144, 154,and/or 164 may require a wireless bandwidth capacity, which is greaterthan the limited wireless bandwidth capacity of wireless medium 103.

In one example, the required bandwidth capacity may be greater than thelimited bandwidth capacity, for example, if all wireless video streams134, 144, 154, and 164 are transmitted concurrently and/or the video ofwireless video streams 134, 144, 154, and/or 164 requires a relativelyhigh bandwidth, e.g., resulting from the one or more encodingattributes.

In some demonstrative embodiments, wireless video streams 134, 144, 154,and 164 may experience random audio/video drop, glitches of the video,and/or a relatively increased video latency, which may cause arelatively poor user experience (UX), for example, if the requiredbandwidth capacity is greater than the limited bandwidth capacity ofwireless medium 103.

The phrase “user experience” (UX), as used herein, may refer, forexample, to emotions of a user of a device, a system and/or a serviceabout using the device, the system and/or the service. For example, theuser experience may emphasize experiential, affective, meaningful and/orvaluable aspects of human-computer interaction. Additionally, the userexperience may include perceptions of the user with respect to thedevice, for example, a utility, an ease of use and/or an efficiency ofthe device.

Some demonstrative embodiments may reduce the wireless bandwidthutilization, and improve user experience at a wireless bandwidth limitedenvironment.

Some demonstrative embodiments may utilize at least one of twoclosed-loop dynamic video encoder parameter adaptation algorithms toreduce the wireless bandwidth utilization, e.g., as described below.

In some demonstrative embodiments, device 102 may utilize informationwith respect to wireless video frames, display device 120 and/or the oneor more windows to feedback values of the encoding attributes to the oneor more encoders. The one or more encoders may dynamically adjust theencoding attributes, e.g., based on the received feedback, e.g., asdescribed below.

In some demonstrative embodiments, device 102 may include a controller112 configured to control one or more windows of windows 121, 122, 123and/or 124 to display video of one or more wireless video streams ofwireless video streams 134, 144, 154, and/or 164.

In one example, device 102 may utilize a user input back channel (UIBC)to remotely control video sources 131, 141, 151, and/or 161 fordisplaying the one or more wireless video streams of wireless videostreams 134, 144, 154, and/or 164.

In some demonstrative embodiments, controller 112 may request at leastone video source of video sources 131, 141, 151 and/or 161 to set one ormore attributes of a video stream transmitted by the video source basedon at least one predefined criterion, e.g., as described below.

In some demonstrative embodiments, the one or more attributes mayinclude a resolution of the video stream, a frame rate of the videostream, a bit rate of the video stream, whether or not the video streamis to be transmitted, and/or any other attribute.

In some demonstrative embodiments, controller 112 may control wirelesscommunication unit 110 to transmit a feedback to the video source. Forexample, controller 112 may utilize a protocol built on top of Miracast™or any other mechanism to transmit the feedback to the video source.

In some demonstrative embodiments, the feedback may include anindication of the one or more attributes.

In some demonstrative embodiments, the video source may receive thefeedback, and may encode the video stream according to the one or moreattributes received in the feedback.

For example, controller 112 may send feedback to device 130 to requestvideo source 131 to set one or more attributes of a video streamtransmitted via wireless video stream 134 based on the at least onepredefined criterion. Device 130 may receive the feedback and maycontrol encoder 135 to encode the video stream according the one or moreattributes.

In some demonstrative embodiments, the at least one predefined criterionmay include one or more window attributes relating to windows 121, 122,123 and/or 124, e.g., as described below.

In some demonstrative embodiments, the one or more window attributes mayinclude a number of the one or more windows to be displayed, aresolution of a window of windows 121, 122, 123 and/or 124, whether ornot the window is active, and/or any other attribute.

In some demonstrative embodiments, controller 112 may be configured tomonitor the one or more window attributes. For example, controller 112may receive information, e.g., from display device 120, relating to thenumber of the one or more windows to be displayed, the resolution of awindow currently displayed on screen 125, and/or any other attribute ofthe windows.

In some demonstrative embodiments, controller 112 may request a videosource of video sources 130, 140, 150 and/or 160 to set a resolution ofa video stream generated by the video source based on the number of theone or more windows to be displayed.

In some demonstrative embodiments, controller 112 may request the videosource to set a first resolution of the video stream if a first numberof windows is to be displayed on screen 125, and a second resolution,e.g., lesser than the first resolution, if a second number of windows isto be displayed on screen 125, for example, if the second number ofwindows is greater than the first number of windows.

In some demonstrative embodiments, setting the second resolution of thevideo stream may reduce a bandwidth required to transmit the videostream, e.g., compared to a bandwidth required to transmit the videostream encoded according to the first resolution.

In some demonstrative embodiments, controller 112 may determine theresolution of the video stream based on the resolution of screen 125 andthe number of the one or more windows to be displayed.

In some demonstrative embodiments, controller 112 may divide theresolution of screen 125 by the number of the one or more wireless videostreams to be displayed.

In some demonstrative embodiments, controller 112 may divide theresolution of screen 125 by the number of the one or more wireless videostreams plus one, for example, if the number of the one or more wirelessvideo streams is an odd number.

In some demonstrative embodiments, controller 112 may select aresolution, which is closest to the quotient of the division.

In some demonstrative embodiments, controller 112 may feedback theselected resolution to the video source. The video source may set theselected resolution to the video stream.

In one example, the user may control display device 120 to concurrentlydisplay four windows, e.g., windows 121, 122, 123, and 124, to displayvideo of wireless video streams 134, 144, 154 and 164, e.g., in windows121, 122, 123, and 124.

For example, the resolution of screen 125 may be of 1920×1080 pixels.According to this example, controller 112 may divide the resolution ofscreen 125 by two in each dimension of screen 125, e.g., since screen125 is to display four windows, which may result in a resolution of960×540 pixels.

In some demonstrative embodiments, controller 112 may select from aplurality of resolutions, e.g., of 800×600 pixels, 1024×768 or 1280×720pixels, a resolution, which is closest to the quotient of the division.For example, controller 112 may select a resolution of 1024×768 pixels,which is closest to the resolution of 960×540 pixels.

In some demonstrative embodiments, controller 112 may request each videosource of video sources 131, 141, 151 and 162, to set the resolution of800×600 pixels for encoding the video of wireless video streams 134,144, 154 and/or 164.

In some demonstrative embodiments, setting a resolution of the videosteam to a resolution of 800×600 pixels may reduce the bandwidthrequired for transmitting the video stream, e.g., compared to aresolution of 1920×1080 pixels, which may be required for a video streamto be displayed on the entirety of screen 125. Accordingly, a bandwidthrequired for concurrently transmitting of wireless video streams 134,144, 154 and/or 164 may be reduced.

In some demonstrative embodiments, the reduced bandwidth required forthe video stream may enable a smoother streaming and/or less glitches ofthe video stream, which, in turn, may enable an increased userexperience.

In some demonstrative embodiments, controller 112 may request a videosource of video sources 130, 140, 150 and/or 160 to set a resolution ofa video stream generated by the video source based on the resolution ofa window to display the video stream.

In some demonstrative embodiments, controller 112 may request the videosource to set a first video stream resolution of the video stream for afirst window resolution and a second, e.g., lesser, video streamresolution of the video stream for a second window resolution, forexample, if the second window resolution is lesser than the first windowresolution.

For example, controller 112 may request video source 131 to set a firstresolution of 1920×1980 to the video stream to be displayed on window121 having a resolution of 1920×1080, e.g., when window 121 is occupyingthe entirety of screen 125; and a second resolution of 1024×768 pixelsto the video stream to be displayed on window 121 having a resolution of1024×768 pixels, e.g., when window 121 is occupying part of screen 125.

In some demonstrative embodiments, controller 112 may request a videosource of video sources 130, 140, 150 and/or 160 to halt transmission ofa video stream generated by the video source, e.g., when the videostream is not to be displayed.

For example, controller 112 may request video source 131 to halttransmission of wireless video stream 134, for example, if the videostream of video source 131 is not to be displayed on screen 125.

In one example, the user of device 102 may control display device 120 todisplay video of wireless video stream 134 in window 121 such thatwindow 121 is occupying the entirety of screen 125. Accordingly, thevideo of wireless video stream 134 may be encoded at a resolution of1920×1080 pixels.

According to this example, controller 112 may request video source 141to halt transmission of wireless video stream 144, controller 112 mayrequest video source 151 to halt transmission of wireless video stream154 and/or controller 112 may request video source 161 to halttransmission of wireless video stream 164, for example, since the videoof wireless video streams 144, 154 and/or 164 are not to be displayed.

In some demonstrative embodiments, the user may control display device120 to concurrently display the four windows, e.g., as described above.

Accordingly, controller 112 may request video source 141 to transmitwireless video stream 144, video source 151 to transmit wireless videostream 154 and/or video source 161 to transmit wireless video stream164, for example, to enable concurrently displaying the video from videosources 131, 141, 151 and 161 in the four windows.

In some demonstrative embodiments, controller 112 may request videosource 131 to set the resolution of the video stream back to aresolution of 1024×768 pixels, and video sources 141, 151 and/or 161 toencode the video at a resolution of 1024×768 pixels, for example, todecrees the required bandwidth when concurrently displaying the fourwindows.

In some demonstrative embodiments, controller 112 may request a videosource of video sources 131, 141, 151 and/or 161 to set a first framerate of a video stream generated by the video source, when a windowdisplaying the video stream is active, and to set a second frame rate ofthe video stream, when the window is non-active.

In some demonstrative embodiments, the first frame rate may be greaterthan the second frame rate, e.g., to enable a relatively quick updatingof the active window.

For example, a frame rate for a video stream to be displayed in anactive window may be set to 30 fps and a frame rate for a video streamto be displayed in a non-active window may be set to 5 fps.

In one example, the user may perform one or more operations on window121, which displays video of wireless video stream 134, while windows122, 123 and/or 124 are non-active, e.g., only displaying video ofwireless video streams 144, 154 and 164. Accordingly, controller 112 mayrequest video source 131 to use the first frame rate for the video ofwireless video stream 134, video source 141 to use the second frame ratefor the video of wireless video stream 144, video source 151 to use thesecond frame rate for the video of wireless video stream 154, and/orvideo source 161 to use the second frame rate for the video of wirelessvideo stream 164.

In some demonstrative embodiments, controller 112 may request a videosource of video sources 131, 141, 151 and/or 161 to set a bit rate of avideo stream generated by the video source based on a frame rate of thevideo stream and a size of a window displaying the video stream.

In some demonstrative embodiments, controller 112 may request the videosource to set a first bit rate for a first frame rate and a first windowsize; and a second bit rate, e.g., lesser than the first bit rate, for asecond screen size and a second frame rate, for example, if the secondscreen size is lesser than the first screen size and/or if the secondframe rate is lesser than the first frame rate.

In one example, controller 112 may request video source 131 to set afirst bit rate of 10 Mbps for the video stream generated by video source131 and displayed on window 121, for example, if the frame rate of thevideo stream is 30 fps and/or window 121 is occupying the entirety ofscreen 125.

In another example, controller 112 may request video source 131 to set asecond bit rate of 1 Mbps for the video stream generated by video source131, for example, if the frame rate of the video stream is 5 fps and/orwindow 121 is occupying part of screen 125.

In some demonstrative embodiments, controller 112 may request a videosource of video sources 131, 141, 151 and/or 161 to set the one or moreattributes of a video stream transmitted by the video source based on atleast one predefined criterion, which includes a quality of experience(QoE) criterion corresponding to the one or more wireless video streams,e.g., as described below.

The phrase “quality of experience (QoE)”, as used herein, may relate toa measure of the user experience (UX) of a device, system and orservice. QoE metrics may measure metrics that the user may perceive as aquality parameter of the user experience, for example, a delay time of avideo stream, image quality of the video stream, and/or the like.

In some demonstrative embodiments, controller 112 may request the videosource of video sources 131, 141, 151 and/or 161 to set the one or moreattributes of the video stream based on the QoE criterion, for example,after requesting the video source to set the one or more attributes ofthe video stream based on the one or more windows attributes, e.g., asdescribed below.

In other embodiments, controller 112 may request the video source ofvideo sources 131, 141, 151 and/or 161 to set the one or more attributesof the video stream based on the QoE criterion, in addition to orinstead of requesting the video source to set the one or more attributesof the video stream based on the one or more windows attributes.

In some demonstrative embodiments, the at least one predefined criterionmay include a criterion relating to a drop rate of the video stream, aframe rate of the video stream, a bit rate of the video stream, and/orany other attribute.

In some demonstrative embodiments, controller 112 may request a videosource of video sources 131, 141, 151 and/or 161 to set the bit rate ofthe video stream generated by the video source based on the drop rate ofthe video stream, e.g., as described below with reference to FIG. 2.

In some demonstrative embodiments, controller 112 may request the videosource to increase the bit rate of the video stream, e.g., if the droprate of the video stream is lesser than a first predefined threshold,and to decrease the bit rate of the video stream, e.g., if the drop rateof the video stream is greater than a second predefined threshold.

In one example, controller 112 may monitor a drop rate, e.g., areal-time transport protocol (RTP) packer drop rate, of the video streamof wireless video stream 134.

In some demonstrative embodiments, controller 112 may assure that thedrop rate of the video stream is within a drop rate range, e.g., betweenthe first predefined threshold and the second predefined threshold.

In some demonstrative embodiments, controller 112 may request videosource 131 to reduce a bit rate of encoder 135 by a predefinedadjustment step, e.g., of 1 Mbps, for example, if the monitored droprate of the video of wireless video stream 134 is greater than the firstpredefined threshold.

For example, the drop rate of wireless video stream 134 may be greaterthan the first predefined threshold when an available bandwidth ofwireless medium 103 is relatively low, e.g., due to interference fromwireless video streams 144, 154 and/or 164 and/or other co-channelinterference.

In some demonstrative embodiments, controller 112 may request videosource 131 to increase the bit rate of encoder 135 by the predefinedadjustment step, for example, if the monitored drop rate of wirelessvideo stream 134 is lesser than the second predefined threshold.

For example, the drop rate of wireless video stream 134 may be lesserthan the second predefined threshold when the available bandwidth ofwireless medium 103 is relatively high, e.g., due to no transmissionand/or less interference from wireless video streams 144, 154 and/or 164and/or other co-channel interference. In some demonstrative embodiments,controller 112 may repeat requesting video source 131 to increase and/ordecrease the bit rate of encoder 135, e.g., by the predefined adjustmentstep, for example, until the drop rate is within the drop rate range.

In some demonstrative embodiments, different sets of first and secondpredefined thresholds may be assigned for one or more video sources ofvideo sources 130, 140, 150 and/or 160, for example, if video sources131, 141, 151 and/or 161 may not have a similar drop rate; are notlocated at a same location, e.g., a room, a class, or the like; do nothave a line of sight (LOS) between video sources 131, 141, 151 and/or161; and/or have a comparable distance between video sources 131, 141,151 and/or 161.

In some demonstrative embodiments, controller 112 may request a videosource of video sources 131, 141, 151 and/or 161 to set the frame rateof the video stream generated by the video source based on the bit rateof the video stream.

In some demonstrative embodiments, controller 112 may request the videosource to decrease the frame rate of the video stream if the bit rate ofthe video stream decreases.

In one example, controller 112 may monitor the bit rate and the framerate of the video stream of wireless video stream 134.

In some demonstrative embodiments, controller 112 may detect the bitrate of the video stream of wireless video stream 134 is relatively low,for example, when the video stream is relatively simple, static, and/orhas a relatively low rate of changes, and the frame rate is relativelyhigh. Accordingly, controller 112 may request video source 131 todecrease the frame rate.

In some demonstrative embodiments, decreasing the frame rate of thevideo stream of wireless video stream 134 may reduce the bandwidthrequired for transmitting wireless video stream 134.

Reference is made to FIG. 2, which schematically illustrates a flowchart illustration of a method of adjusting a bit rate of a videoencoder, in accordance with some demonstrative embodiments. For example,one or more of the operations of the method of FIG. 2 may be performedby a wireless communication system, e.g., system 100 (FIG. 1); awireless communication device, e.g., device 102 (FIG. 1); and/or acontroller, e.g., controller 112 (FIG. 1).

As indicated at block 202, the method may include determining whether ornot a drop rate of a video stream of a video source is above a first,e.g., a relatively high, threshold. For example, controller 112 (FIG. 1)may determine whether or not the drop rate of wireless video stream 134(FIG. 1) is above the first predefined threshold, e.g., as describedabove.

As indicated at block 204, the method may include requesting the videosource to decrease the bit rate by one step, e.g., if the drop rate isgreater than the first threshold. For example, controller 112 (FIG. 1)may request video source 131 to decrease the bit rate by the predefinedadjustment step, e.g., if the drop rate of wireless video steam 134(FIG. 1) is greater than the first predefined threshold, e.g., asdescribed above.

As indicated at block 206, the method may include determining whether ornot the drop rate of the video stream of the video source is lesser thana second, e.g., a relatively low threshold. For example, controller 112(FIG. 1) may determine whether or not the drop rate of wireless videostream 134 (FIG. 1) is lesser than the second predefined threshold,e.g., as described above.

As indicated at block 208, the method may include not requesting achange of the bit rate if the drop rate is not lesser than the secondthreshold.

As indicated at block 210, the method may include determining whether ornot the encoder bit rate is lesser than a predefined maximal encoder bitrate, e.g., if the drop rate is lesser than the lower threshold. Forexample, controller 112 (FIG. 1) may determine whether or not the bitrate of encoder 135 (FIG. 1) is lesser than a predefined maximal encoderbit rate.

As indicated at block 212, the method may include not requesting achange of the bit rate if the bit rate is not lower than the predefinedmaximal encoder bit rate.

As indicated at block 214, the method may include requesting the videosource to increase the bit rate by the predefined adjustment step, e.g.,if the bit rate is lesser than predefined maximal encoder bit rate andthe drop rate is lesser than the lower threshold. For example,controller 112 (FIG. 1) may request video source 131 to increase the bitrate by the predefined adjustment step, e.g., if the drop rate ofwireless video steam 134 (FIG. 1) is lesser than the second predefinedthreshold, e.g., as described above.

Reference is now made to FIG. 3, which schematically illustrates a flowchart illustration of a method of controlling wireless transmission ofvideo streams, in accordance with some demonstrative embodiments. Forexample, one or more of the operations of the method of FIG. 3 may beperformed by a wireless communication system, e.g., system 100 (FIG. 1);a wireless communication device, e.g., device 102 (FIG. 1); and/or acontroller, e.g., controller 112 (FIG. 1).

As indicated at block 302, the method may include controlling one ormore windows to display video of one or more wireless video streams of aplurality of wireless video streams transmitted by a plurality of videosources. For example, controller 112 (FIG. 1) may control windows 121,122, 123 and/or 124 (FIG. 1) to display video of wireless video streams134, 144, 154 and/or 164 (FIG. 1) transmitted by wireless video sources131, 141, 151, and/or 161 (FIG. 1), e.g., as described above.

As indicated at block 304, the method may include requesting at leastone video source of the plurality of video sources to set one or moreattributes of a video stream transmitted by the video source based on atleast one predefined criterion. For example, controller 112 (FIG. 1) mayrequest video source 131 (FIG. 1) to set one or more attributes of thevideo stream transmitted by device 130 (FIG. 1) based on the at leastone predefined criterion, e.g., as described above.

As indicated at block 306, the method may include setting a resolutionof the video stream based on a number of the one or more wireless videostreams. For example, controller 112 (FIG. 1) may request video source131 (FIG. 1) to set a resolution of the video stream based on the numberof the one or more wireless video streams, e.g., as described above.

As indicated at block 308, the method may include halting transmissionof the video stream when video of the video stream is not to bedisplayed. For example, controller 112 (FIG. 1) may request video source141 (FIG. 1) to halt transmission of wireless video stream 144 (FIG. 1)when the video stream of wireless video stream 144 (FIG. 1) is not to bedisplayed, e.g., as described above.

As indicated at block 310, the method may include setting the bit rateof the video stream based on the drop rate of the video stream. Forexample, controller 112 (FIG. 1) may request video source 131 (FIG. 1)to set the bit rate of the video stream based on the drop rate of thevideo stream of wireless video stream 134 (FIG. 1), e.g., as describedabove.

As indicated at block 312, the method may include setting the frame rateof the video stream based on the bit rate of the video stream. Forexample, controller 112 (FIG. 1) may request video source 131 (FIG. 1)to set the frame rate of the video stream based on the bit rate ofwireless video stream 134 (FIG. 1), e.g., as described above.

Reference is made to FIG. 4, which schematically illustrates a productof manufacture 400, in accordance with some demonstrative embodiments.Product 400 may include a non-transitory machine-readable storage medium402 to store logic 404, which may be used, for example, to perform atleast part of the functionality of device 102 (FIG. 1), controller 112(FIG. 1), and/or to perform one or more operations of the method ofFIGS. 2 and/or 3. The phrase “non-transitory machine-readable medium” isdirected to include all computer-readable media, with the sole exceptionbeing a transitory propagating signal.

In some demonstrative embodiments, product 400 and/or machine-readablestorage medium 402 may include one or more types of computer-readablestorage media capable of storing data, including volatile memory,non-volatile memory, removable or non-removable memory, erasable ornon-erasable memory, writeable or re-writeable memory, and the like. Forexample, machine-readable storage medium 402 may include, RAM, DRAM,Double-Data-Rate DRAM (DDR-DRAM), SDRAM, static RAM (SRAM), ROM,programmable ROM (PROM), erasable programmable ROM (EPROM), electricallyerasable programmable ROM (EEPROM), Compact Disk ROM (CD-ROM), CompactDisk Recordable (CD-R), Compact Disk Rewriteable (CD-RW), flash memory(e.g., NOR or NAND flash memory), content addressable memory (CAM),polymer memory, phase-change memory, ferroelectric memory,silicon-oxide-nitride-oxide-silicon (SONOS) memory, a disk, a floppydisk, a hard drive, an optical disk, a magnetic disk, a card, a magneticcard, an optical card, a tape, a cassette, and the like. Thecomputer-readable storage media may include any suitable media involvedwith downloading or transferring a computer program from a remotecomputer to a requesting computer carried by data signals embodied in acarrier wave or other propagation medium through a communication link,e.g., a modem, radio or network connection.

In some demonstrative embodiments, logic 404 may include instructions,data, and/or code, which, if executed by a machine, may cause themachine to perform a method, process and/or operations as describedherein. The machine may include, for example, any suitable processingplatform, computing platform, computing device, processing device,computing system, processing system, computer, processor, or the like,and may be implemented using any suitable combination of hardware,software, firmware, and the like.

In some demonstrative embodiments, logic 404 may include, or may beimplemented as, software, a software module, an application, a program,a subroutine, instructions, an instruction set, computing code, words,values, symbols, and the like. The instructions may include any suitabletype of code, such as source code, compiled code, interpreted code,executable code, static code, dynamic code, and the like. Theinstructions may be implemented according to a predefined computerlanguage, manner or syntax, for instructing a processor to perform acertain function. The instructions may be implemented using any suitablehigh-level, low-level, object-oriented, visual, compiled and/orinterpreted programming language, such as C, C++, Java, BASIC, Matlab,Pascal, Visual BASIC, assembly language, machine code, and the like.

EXAMPLES

The following examples pertain to further embodiments.

Example 1 includes an apparatus comprising a controller to control oneor more windows to be displayed by a display device, the one or morewindows to display video of one or more wireless video streams of aplurality of wireless video streams transmitted by a plurality of videosources, the controller is to request at least one video source of theplurality of video sources to set one or more attributes of a videostream transmitted by the video source based on at least one predefinedcriterion.

Example 2 includes the subject matter of Example 1 and optionally,wherein the attributes include at least one attribute selected from thegroup consisting of a resolution of the video stream, a frame rate ofthe video stream, a bit rate of the video stream, and whether or not thevideo stream is to be transmitted.

Example 3 includes the subject matter of Example 1 or 2 and optionally,wherein the at least one predefined criterion includes one or morewindow attributes relating to the one or more windows.

Example 4 includes the subject matter of Example 3 and optionally,wherein the one or more window attributes include at least one attributeselected from the group consisting of a number of the one or more videostreams to be displayed, a resolution of a window of the windows todisplay video of the video stream, and whether or not the window isactive.

Example 5 includes the subject matter of Example 4 and optionally,wherein the controller is to request the video source to set aresolution of the video stream based on the number of the one or morewireless video streams.

Example 6 includes the subject matter of Example 4 or 5 and optionally,wherein the controller is to request the video source to set aresolution of the video stream based on the resolution of the window.

Example 7 includes the subject matter of any one of Examples 4-6 andoptionally, wherein the controller is to request the video source tohalt transmission of the video stream when video of the video stream isnot to be displayed.

Example 8 includes the subject matter of any one of Examples 4-7 andoptionally, wherein the controller is to request the video source to seta frame rate of the video stream to a first rate, when the window isactive, and to set the frame rate of the video stream to a second rate,when the window is non-active, the second rate is lesser than the firstrate.

Example 9 includes the subject matter of any one of Examples 4-8 andoptionally, wherein the controller is to request the video source to seta bit rate of the video stream based on a frame rate of the video streamand a size of the window.

Example 10 includes the subject matter of any one of Examples 1-9 andoptionally, wherein the at least one predefined criterion includes aquality of experience (QoE) criterion corresponding to the one or morewireless video streams.

Example 11 includes the subject matter of any one of Examples 1-10 andoptionally, wherein the at least one predefined criterion includes acriterion relating to at least one attribute selected from the groupconsisting of a drop rate of the video stream, a frame rate of the videostream and a bit rate of the video stream.

Example 12 includes the subject matter of Example 11 and optionally,wherein the controller is to request the video source to set the bitrate of the video stream based on the drop rate of the video stream.

Example 13 includes the subject matter of Example 12 and optionally,wherein the controller is to request the video source to decrease thebit rate of the video stream if the drop rate of the video stream isgreater than a first predefined threshold and to increase the bit rateof the video stream if the drop rate of the video stream is lesser thana second predefined threshold.

Example 14 includes the subject matter of any one of Examples 11-13 andoptionally, wherein the controller is to request the video source to setthe frame rate of the video stream based on the bit rate of the videostream.

Example 15 includes the subject matter of Example 14 and optionally,wherein the controller is to request the video source to decrease theframe rate of the video stream if the bit rate of the video streamdecreases.

Example 16 includes the subject matter of any one of Examples 1-15 andoptionally, wherein the controller is to control a wirelesscommunication unit to transmit a feedback to the video source, whereinthe feedback includes the one or more attributes.

Example 17 includes the subject matter of any one of Examples 1-16 andoptionally, wherein the one or more wireless video streams are to betransmitted over at least one link selected from the group consisting ofa Wireless Fidelity (WiFi) link, a Wireless Display (WiDi) link, and awireless gigabit (WiGig) Display Extension (WDE) link.

Example 18 includes a system comprising a display to display one or morewindows including video of one or more wireless video streams of aplurality of wireless video streams transmitted by a plurality of videosources; at least one antenna to receive the one or more wireless videostreams; and a controller to request at least one video source of theplurality of video sources to set one or more attributes of a videostream transmitted by the video source based on at least one predefinedcriterion.

Example 19 includes the subject matter of Example 18 and optionally,wherein the attributes include at least one attribute selected from thegroup consisting of a resolution of the video stream, a frame rate ofthe video stream, a bit rate of the video stream, and whether or not thevideo stream is to be transmitted.

Example 20 includes the subject matter of Example 18 or 19 andoptionally, wherein the at least one predefined criterion includes oneor more window attributes relating to the one or more windows.

Example 21 includes the subject matter of Example 20 and optionally,wherein the one or more window attributes include at least one attributeselected from the group consisting of a number of the one or more videostreams to be displayed, a resolution of a window of the windows todisplay video of the video stream, and whether or not the window isactive.

Example 22 includes the subject matter of Example 21 and optionally,wherein the controller is to request the video source to set aresolution of the video stream based on the number of the one or morewireless video streams.

Example 23 includes the subject matter of Example 21 or 22 andoptionally, wherein the controller is to request the video source to seta resolution of the video stream based on the resolution of the window.

Example 24 includes the subject matter of any one of Examples 21-23 andoptionally, wherein the controller is to request the video source tohalt transmission of the video stream when video of the video stream isnot to be displayed.

Example 25 includes the subject matter of any one of Examples 21-24 andoptionally, wherein the controller is to request the video source to seta frame rate of the video stream to a first rate, when the window isactive, and to set the frame rate of the video stream to a second rate,when the window is non-active, the second rate is lesser than the firstrate.

Example 26 includes the subject matter of any one of Examples 21-25 andoptionally, wherein the controller is to request the video source to seta bit rate of the video stream based on a frame rate of the video streamand a size of the window.

Example 27 includes the subject matter of any one of Examples 18-26 andoptionally, wherein the at least one predefined criterion includes aquality of experience (QoE) criterion corresponding to the one or morewireless video streams.

Example 28 includes the subject matter of any one of Examples 18-27 andoptionally, wherein the at least one predefined criterion includes acriterion relating to at least one attribute selected from the groupconsisting of a drop rate of the video stream, a frame rate of the videostream and a bit rate of the video stream.

Example 29 includes the subject matter of Example 28 and optionally,wherein the controller is to request the video source to set the bitrate of the video stream based on the drop rate of the video stream.

Example 30 includes the subject matter of Example 29 and optionally,wherein the controller is to request the video source to decrease thebit rate of the video stream if the drop rate of the video stream isgreater than a first predefined threshold and to increase the bit rateof the video stream if the drop rate of the video stream is lesser thana second predefined threshold.

Example 31 includes the subject matter of any one of Examples 28-30 andoptionally, wherein the controller is to request the video source to setthe frame rate of the video stream based on the bit rate of the videostream.

Example 32 includes the subject matter of Example 31 and optionally,wherein the controller is to request the video source to decrease theframe rate of the video stream if the bit rate of the video streamdecreases.

Example 33 includes the subject matter of any one of Examples 18-32 andoptionally, wherein the controller is to control a wirelesscommunication unit to transmit a feedback to the video source, whereinthe feedback includes the one or more attributes.

Example 34 includes the subject matter of any one of Examples 18-33 andoptionally, wherein the one or more wireless video streams are to betransmitted over at least one link selected from the group consisting ofa Wireless Fidelity (WiFi) link, a Wireless Display (WiDi) link, and awireless gigabit (WiGig) Display Extension (WDE) link.

Example 35 includes a method comprising controlling one or more windowsto display video of one or more wireless video streams of a plurality ofwireless video streams transmitted by a plurality of video sources; andrequesting at least one video source of the plurality of video sourcesto set one or more attributes of a video stream transmitted by the videosource based on at least one predefined criterion.

Example 36 includes the subject matter of Example 35 and optionally,wherein the attributes include at least one attribute selected from thegroup consisting of a resolution of the video stream, a frame rate ofthe video stream, a bit rate of the video stream, and whether or not thevideo stream is to be transmitted.

Example 37 includes the subject matter of Example 35 or 36 andoptionally, wherein the at least one predefined criterion includes oneor more window attributes relating to the one or more windows.

Example 38 includes the subject matter of Example 37 and optionally,wherein the one or more window attributes include at least one attributeselected from the group consisting of a number of the one or more videostreams to be displayed, a resolution of a window of the windows todisplay video of the video stream, and whether or not the window isactive.

Example 39 includes the subject matter of Example 38 and optionally,comprising requesting the video source to set a resolution of the videostream based on the number of the one or more wireless video streams.

Example 40 includes the subject matter of Example 38 or 39 andoptionally, comprising requesting the video source to set a resolutionof the video stream based on the resolution of the window.

Example 41 includes the subject matter of any one of Examples 38-40 andoptionally, comprising requesting the video source to halt transmissionof the video stream when video of the video stream is not to bedisplayed.

Example 42 includes the subject matter of any one of Examples 38-41 andoptionally, comprising requesting the video source to set a frame rateof the video stream to a first rate, when the window is active, andrequesting the video source to set the frame rate of the video stream toa second rate, when the window is non-active, the second rate is lesserthan the first rate.

Example 43 includes the subject matter of any one of Examples 38-42 andoptionally, comprising requesting the video source to set a bit rate ofthe video stream based on a frame rate of the video stream and a size ofthe window.

Example 44 includes the subject matter of any one of Examples 35-43 andoptionally, wherein the at least one predefined criterion includes aquality of experience (QoE) criterion corresponding to the one or morewireless video streams.

Example 45 includes the subject matter of any one of Examples 35-44 andoptionally, wherein the at least one predefined criterion includes acriterion relating to at least one attribute selected from the groupconsisting of a drop rate of the video stream, a frame rate of the videostream and a bit rate of the video stream.

Example 46 includes the subject matter of Example 45 and optionally,comprising requesting the video source to set the bit rate of the videostream based on the drop rate of the video stream.

Example 47 includes the subject matter of Example 46 and optionally,comprising requesting the video source to decrease the bit rate of thevideo stream if the drop rate of the video stream is greater than afirst predefined threshold, and requesting the video source to increasethe bit rate of the video stream if the drop rate of the video stream islesser than a second predefined threshold.

Example 48 includes the subject matter of any one of Examples 35-47 andoptionally, comprising requesting the video source to set the frame rateof the video stream based on the bit rate of the video stream.

Example 49 includes the subject matter of Example 48 and optionally,comprising requesting the video source to decrease the frame rate of thevideo stream if the bit rate of the video stream decreases.

Example 50 includes the subject matter of any one of Examples 35-49 andoptionally, comprising transmitting a feedback to the video source,wherein the feedback includes the one or more attributes.

Example 51 includes the subject matter of any one of Examples 35-50 andoptionally, wherein the one or more wireless video streams are to betransmitted over at least one link selected from the group consisting ofa Wireless Fidelity (WiFi) link, a Wireless Display (WiDi) link, and awireless gigabit (WiGig) Display Extension (WDE) link.

Example 52 includes a product including a non-transitory storage mediumhaving stored thereon instructions that, when executed by a machine,result in controlling one or more windows to display video of one ormore wireless video streams of a plurality of wireless video streamstransmitted by a plurality of video sources; and requesting at least onevideo source of the plurality of video sources to set one or moreattributes of a video stream transmitted by the video source based on atleast one predefined criterion.

Example 53 includes the subject matter of Example 52 and optionally,wherein the attributes include at least one attribute selected from thegroup consisting of a resolution of the video stream, a frame rate ofthe video stream, a bit rate of the video stream, and whether or not thevideo stream is to be transmitted.

Example 54 includes the subject matter of Example 52 or 53 andoptionally, wherein the at least one predefined criterion includes oneor more window attributes relating to the one or more windows.

Example 55 includes the subject matter of Example 54 and optionally,wherein the one or more window attributes include at least one attributeselected from the group consisting of a number of the one or more videostreams to be displayed, a resolution of a window of the windows todisplay video of the video stream, and whether or not the window isactive.

Example 56 includes the subject matter of Example 55 and optionally,wherein the instructions result in requesting the video source to set aresolution of the video stream based on the number of the one or morewireless video streams.

Example 57 includes the subject matter of Example 55 or 56 andoptionally, wherein the instructions result in requesting the videosource to set a resolution of the video stream based on the resolutionof the window.

Example 58 includes the subject matter of any one of Examples 55-57 andoptionally, wherein the instructions result in requesting the videosource to halt transmission of the video stream when video of the videostream is not to be displayed.

Example 59 includes the subject matter of any one of Examples 55-58 andoptionally, wherein the instructions result in requesting the videosource to set a frame rate of the video stream to a first rate, when thewindow is active, and requesting the video source to set the frame rateof the video stream to a second rate, when the window is non-active, thesecond rate is lesser than the first rate.

Example 60 includes the subject matter of any one of Examples 55-59 andoptionally, wherein the instructions result in requesting the videosource to set a bit rate of the video stream based on a frame rate ofthe video stream and a size of the window.

Example 61 includes the subject matter of any one of Examples 52-60 andoptionally, wherein the at least one predefined criterion includes aquality of experience (QoE) criterion corresponding to the one or morewireless video streams.

Example 62 includes the subject matter of any one of Examples 52-61 andoptionally, wherein the at least one predefined criterion includes acriterion relating to at least one attribute selected from the groupconsisting of a drop rate of the video stream, a frame rate of the videostream and a bit rate of the video stream.

Example 63 includes the subject matter of Example 62 and optionally,wherein the instructions result in requesting the video source to setthe bit rate of the video stream based on the drop rate of the videostream.

Example 64 includes the subject matter of Example 63 and optionally,wherein the instructions result in requesting the video source todecrease the bit rate of the video stream if the drop rate of the videostream is greater than a first predefined threshold, and requesting thevideo source to increase the bit rate of the video stream if the droprate of the video stream is lesser than a second predefined threshold.

Example 65 includes the subject matter of any one of Examples 52-64 andoptionally, wherein the instructions result in requesting the videosource to set the frame rate of the video stream based on the bit rateof the video stream.

Example 66 includes the subject matter of Example 65 and optionally,wherein the instructions result in requesting the video source todecrease the frame rate of the video stream if the bit rate of the videostream decreases.

Example 67 includes the subject matter of any one of Examples 52-66 andoptionally, wherein the instructions result in transmitting a feedbackto the video source, wherein the feedback includes the one or moreattributes.

Example 68 includes the subject matter of any one of Examples 52-67 andoptionally, wherein the one or more wireless video streams are to betransmitted over at least one link selected from the group consisting ofa Wireless Fidelity (WiFi) link, a Wireless Display (WiDi) link, and awireless gigabit (WiGig) Display Extension (WDE) link.

Example 69 includes an apparatus comprising means for controlling one ormore windows to display video of one or more wireless video streams of aplurality of wireless video streams transmitted by a plurality of videosources; and means for requesting at least one video source of theplurality of video sources to set one or more attributes of a videostream transmitted by the video source based on at least one predefinedcriterion.

Example 70 includes the subject matter of Example 69 and optionally,wherein the attributes include at least one attribute selected from thegroup consisting of a resolution of the video stream, a frame rate ofthe video stream, a bit rate of the video stream, and whether or not thevideo stream is to be transmitted.

Example 71 includes the subject matter of Example 69 or 70 andoptionally, wherein the at least one predefined criterion includes oneor more window attributes relating to the one or more windows.

Example 72 includes the subject matter of Example 71 and optionally,wherein the one or more window attributes include at least one attributeselected from the group consisting of a number of the one or more videostreams to be displayed, a resolution of a window of the windows todisplay video of the video stream, and whether or not the window isactive.

Example 73 includes the subject matter of Example 72 and optionally,comprising means for requesting the video source to set a resolution ofthe video stream based on the number of the one or more wireless videostreams.

Example 74 includes the subject matter of Example 72 or 73 andoptionally, comprising means for requesting the video source to set aresolution of the video stream based on the resolution of the window.

Example 75 includes the subject matter of any one of Examples 72-74 andoptionally, comprising means for requesting the video source to halttransmission of the video stream when video of the video stream is notto be displayed.

Example 76 includes the subject matter of any one of Examples 72-75 andoptionally, comprising means for requesting the video source to set aframe rate of the video stream to a first rate, when the window isactive, and means for requesting the video source to set the frame rateof the video stream to a second rate, when the window is non-active, thesecond rate is lesser than the first rate.

Example 77 includes the subject matter of any one of Examples 72-76 andoptionally, comprising means for requesting the video source to set abit rate of the video stream based on a frame rate of the video streamand a size of the window.

Example 78 includes the subject matter of any one of Examples 69-77 andoptionally, wherein the at least one predefined criterion includes aquality of experience (QoE) criterion corresponding to the one or morewireless video streams.

Example 79 includes the subject matter of any one of Examples 69-78 andoptionally, wherein the at least one predefined criterion includes acriterion relating to at least one attribute selected from the groupconsisting of a drop rate of the video stream, a frame rate of the videostream and a bit rate of the video stream.

Example 80 includes the subject matter of Example 79 and optionally,comprising means for requesting the video source to set the bit rate ofthe video stream based on the drop rate of the video stream.

Example 81 includes the subject matter of Example 80 and optionally,comprising means for requesting the video source to decrease the bitrate of the video stream if the drop rate of the video stream is greaterthan a first predefined threshold, and means for requesting the videosource to increase the bit rate of the video stream if the drop rate ofthe video stream is lesser than a second predefined threshold.

Example 82 includes the subject matter of any one of Examples 69-81 andoptionally, comprising means for requesting the video source to set theframe rate of the video stream based on the bit rate of the videostream.

Example 83 includes the subject matter of Example 82 and optionally,comprising means for requesting the video source to decrease the framerate of the video stream if the bit rate of the video stream decreases.

Example 84 includes the subject matter of any one of Examples 69-83 andoptionally, comprising means for transmitting a feedback to the videosource, wherein the feedback includes the one or more attributes.

Example 85 includes the subject matter of any one of Examples 69-84 andoptionally, wherein the one or more wireless video streams are to betransmitted over at least one link selected from the group consisting ofa Wireless Fidelity (WiFi) link, a Wireless Display (WiDi) link, and awireless gigabit (WiGig) Display Extension (WDE) link.

Functions, operations, components and/or features described herein withreference to one or more embodiments, may be combined with, or may beutilized in combination with, one or more other functions, operations,components and/or features described herein with reference to one ormore other embodiments, or vice versa.

While certain features of the invention have been illustrated anddescribed herein, many modifications, substitutions, changes, andequivalents may occur to those skilled in the art. It is, therefore, tobe understood that the appended claims are intended to cover all suchmodifications and changes as fall within the true spirit of theinvention.

What is claimed is:
 1. An apparatus comprising: at least one radio toconcurrently communicate directly with a plurality of wirelesscommunication devices over a plurality of wireless network communicationlinks, and to receive a plurality of wireless video streams from aplurality of video sources via the plurality of wireless networkcommunication links; and a controller to control two or more windows tobe displayed by a display device, said two or more windows to displayvideo of two or more wireless video streams of said plurality ofwireless video streams, said controller is to send to at least one videosource of said plurality of video sources at least one request to setone or more attributes of a video stream transmitted by said videosource based at least on a drop rate of the video stream, saidcontroller is to request said video source to set an encoding bit rateof said video stream based on a frame rate of said video stream and asize of a window to display video of said video stream, said controlleris to request said video source to decrease the frame rate of said videostream if the encoding bit rate of said video stream decreases.
 2. Theapparatus of claim 1, wherein said attributes include at least oneattribute selected from the group consisting of a resolution of saidvideo stream, the frame rate of said video stream, the encoding bit rateof said video stream, and whether or not said video stream is to betransmitted.
 3. The apparatus of claim 1, wherein said controller is tosend said at least one request based on one or more window attributesrelating to said two or more windows.
 4. The apparatus of claim 3,wherein said one or more window attributes include at least oneattribute selected from the group consisting of a number of said two ormore video streams to be displayed, a resolution of the window todisplay video of said video stream, and whether or not said window isactive.
 5. The apparatus of claim 4, wherein said controller is torequest said video source to set a resolution of said video stream basedon the number of said two or more wireless video streams.
 6. Theapparatus of claim 4, wherein said controller is to request said videosource to set a resolution of said video stream based on the resolutionof said window.
 7. The apparatus of claim 4, wherein said controller isto request said video source to halt transmission of said video streamwhen video of said video stream is not to be displayed.
 8. The apparatusof claim 4, wherein said controller is to request said video source toset the frame rate of said video stream to a first rate, when saidwindow is active, and to set the frame rate of said video stream to asecond rate, when said window is non-active, said second rate is lesserthan said first rate.
 9. The apparatus of claim 1, wherein saidcontroller is to send said at least one request based on a criterionrelating to at least one attribute selected from the group consisting ofthe frame rate of said video stream and the encoding bit rate of saidvideo stream.
 10. The apparatus of claim 1, wherein said controller isto request said video source to set the encoding bit rate of said videostream based on the drop rate of said video stream.
 11. The apparatus ofclaim 10, wherein said controller is to request said video source todecrease the encoding bit rate of said video stream if the drop rate ofsaid video stream is greater than a first predefined threshold, and toincrease the encoding bit rate of said video stream if the drop rate ofsaid video stream is lesser than a second predefined threshold.
 12. Theapparatus of claim 1, wherein said controller is to cause said radio totransmit a feedback to said video source, wherein said feedback includessaid one or more attributes.
 13. The apparatus of claim 1, wherein saidtwo or more wireless video streams are to be received over at least onelink selected from the group consisting of a Wireless Fidelity (WiFi)link, a Wireless Display (WiDi) link, and a wireless gigabit (WiGig)Display Extension (WDE) link.
 14. A system comprising: a display todisplay two or more windows including video of two or more wirelessvideo streams of a plurality of wireless video streams from a pluralityof video sources; at least one antenna to concurrently communicatedirectly with a plurality of wireless communication devices over aplurality of wireless network communication links, and to receive saidplurality of wireless video streams via the plurality of wirelessnetwork communication links; and a controller to send to at least onevideo source of said plurality of video sources at least one request toset one or more attributes of a video stream transmitted by said videosource based at least on a drop rate of the video stream, saidcontroller is to request said video source to set an encoding bit rateof said video stream based on a frame rate of said video stream and asize of a window to display video of said video stream, said controlleris to request said video source to decrease the frame rate of said videostream if the encoding bit rate of said video stream decreases.
 15. Thesystem of claim 14, wherein said attributes include at least oneattribute selected from the group consisting of a resolution of saidvideo stream, the frame rate of said video stream, the encoding bit rateof said video stream, and whether or not said video stream is to betransmitted.
 16. The system of claim 14, wherein said controller is tosend said at least one request based on one or more window attributesrelating to said two or more windows.
 17. The system of claim 16,wherein said one or more window attributes include at least oneattribute selected from the group consisting of a number of said two ormore video streams to be displayed, a resolution of the window todisplay video of said video stream, and whether or not said window isactive.
 18. The system of claim 17, wherein said controller is torequest said video source to set a resolution of said video stream basedon the number of said two or more wireless video streams.
 19. The systemof claim 14, wherein said controller is to send said at least onerequest based on a criterion relating to at least one attribute selectedfrom the group consisting of the frame rate of said video stream and theencoding bit rate of said video stream.
 20. A method to be performed bya video display device, the method comprising: concurrentlycommunicating directly with a plurality of wireless communicationdevices over a plurality of wireless network communication links;controlling, at the video display device, two or more windows to displayvideo of two or more wireless video streams of a plurality of wirelessvideo streams from a plurality of video sources via the plurality ofwireless network communication links; and transmitting at least onewireless transmission including at least one request to at least onevideo source of said plurality of video sources, the at least onerequest including a request to set one or more attributes of a videostream transmitted by said video source based at least on a drop rate ofsaid video stream, a request to set an encoding bit rate of said videostream based on a frame rate of said video stream and a size of a windowto display video of said video stream, and a request to decrease theframe rate of said video stream if the encoding bit rate of said videostream decreases.
 21. The method of claim 20, wherein said attributesinclude at least one attribute selected from the group consisting of aresolution of said video stream, the frame rate of said video stream,the encoding bit rate of said video stream, and whether or not saidvideo stream is to be transmitted.
 22. The method of claim 20 comprisingtransmitting the at least one request based on a criterion relating toat least one attribute selected from the group consisting of the framerate of said video stream and the encoding bit rate of said videostream.
 23. A product including a non-transitory storage medium havingstored thereon instructions that, when executed by a machine, result in:concurrently communicating directly with a plurality of wirelesscommunication devices over a plurality of wireless network communicationlinks; controlling two or more windows to display video of two or morewireless video streams of a plurality of wireless video streams from aplurality of video sources via the plurality of wireless networkcommunication links; and requesting at least one video source of saidplurality of video sources to set one or more attributes of a videostream transmitted by said video source based at least on a drop rate ofsaid video stream, to set an encoding bit rate of said video streambased on a frame rate of said video stream and a size of a window todisplay video of said video stream, and to decrease the frame rate ofsaid video stream if the encoding bit rate of said video streamdecreases.
 24. The product of claim 23, wherein said attributes includeat least one attribute selected from the group consisting of aresolution of said video stream, the frame rate of said video stream,the encoding bit rate of said video stream, and whether or not saidvideo stream is to be transmitted.
 25. The product of claim 23, whereinsaid instructions result in requesting said video source to set saidattributes based on one or more window attributes relating to said twoor more windows.
 26. The product of claim 23, wherein said instructionsresult in requesting said video source to set said attributes based onat least one attribute selected from the group consisting of the framerate of said video stream and the encoding bit rate of said videostream.